from langchain_openai import ChatOpenAI
# 加载 .env 到环境变量
from dotenv import load_dotenv, find_dotenv

_ = load_dotenv(find_dotenv())
from langchain.schema import (
    AIMessage,  # 等价于OpenAI接口中的assistant role
    HumanMessage,  # 等价于OpenAI接口中的user role
    SystemMessage,  # 等价于OpenAI接口中的system role
)

# 这个我感觉有点像rag的形式，在message列表中提供了更多的信息，让AI给您提供出你想要的答案，类似于
# 一个系统提供了足够多的信息，用户想要在这些信息中找到自己的想要的信息一样
message = [
    SystemMessage(content="你是AGIClass的课程助理"),
    HumanMessage(content="我是学员，我的名字叫张麻子"),
    AIMessage(content="欢迎!"),
    HumanMessage(content="我是谁")
]

llm = ChatOpenAI(model="gpt-3.5-turbo")
response = llm.invoke(message)
print(response.content)
